package com.yt.sys.models.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.util.List;

/**
 * 角色信息VO
 *
 * @author chen
 * @Date 2025-09-03 14:24:00
 */
@Data
public class SysRoleVO implements Serializable {
    @ApiModelProperty(value = "角色ID")
    private Long id;
    @ApiModelProperty(value = "数据版本号（乐观锁控制）")
    private Integer revision;
    @ApiModelProperty(value = "角色名称（如：管理员、调度员）")
    private String roleName;
    @ApiModelProperty(value = "角色图标路径")
    private String roleLogo;
    @ApiModelProperty(value = "角色描述（说明角色权限范围）")
    private String roleDes;
    @ApiModelProperty(value = "角色状态：0-禁用，1-启用")
    private Integer status;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "角色关联的权限列表")
    private List<SysPermissionVO> permissions;
}
